﻿namespace IDal
{
    public interface IBase<T>
    {
        Task<int> AddAsync(T t);
        Task<int> UpdateAsync(T t);
        /// <summary>
        /// 这个间接要求所有表的主键必须是id并且是int
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> DeleteAsync(int id);
        T GetSingle(int id);
        IQueryable<T> GetAll();
        Task<int> RangeDeleteAsync(IQueryable<T> values);
    }
}
